AltME groups: search
Help · search scripts · search articles · search mailing listresults summary
world | hits |
r4wp | 13 |
r3wp | 284 |
total: | 297 |
results window for this page: [start: 101 end: 200]
world-name: r3wp
Group: All ... except covered in other channels [web-public] | ||
Micha: 20-Feb-2005 | plis sample open , save file dialog ? | |
Reichart: 8-May-2009 | I hold patents in many fields, and around the world. Costs are tricky. In general, a patent is not worth it in the big scheme of things. You best have something amazing. Today, coming up with a patent in compression would not really matter, since it would just annoy people, i.e. the Unisys patent inside GIF. Let's say you came up with a way to make something 50% smaller even, but if you patent it, and no one will touch it, does it really matter? And then, WHO would touch it, knowing that it is not open? Is it really worth it. Keep in mind, I made a lot of money specifically selling compression technology. If you did much better, like 70% over the next best open system, then it might become worth something. You have to weigh the value. But figure to file outside of America will cost half again what it cost in America. That can range from you doing it your self (a few grand all said, to an average of $8K - $12K ). I personally have never paid less than $20K just in America. But my patents tend to be well researched (better than most people do for their patents). The patent "search" is the expensive part. | |
Group: Ann-Reply ... Reply to Announce group [web-public] | ||
Brock: 10-Aug-2008 | Chris, I get an error... connecting to: chart.apis.google.com ** Access Error: Cannot open /c/documents and settings/brock/application data/rebol/public/chart.apis.google.com/c hart?cht=ls&chs=150x40&... ** Where: read-thru ** Near: write/binary file data if all | |
AdrianS: 24-Aug-2010 | not quite - the correct path is still prefixed with the directory of the rebol exe ** Access Error: Cannot open /C/dev/r2/C:\Windows/system32/Kernel32.dll ** Near: k32-lib: load/library join to-file get-env | |
Group: !AltME ... Discussion about AltME [web-public] | ||
ManuM: 20-Feb-2009 | Vladimir: CTRL+C works for me ( Kubuntu 8.10 ), but I only can paste ( CTRL+V ) at any area of Altme ( New message area, Your current status area, Search area, ... ). If I want to copy one url to paste at other program, I export messages ( top-right button ) and save to a file ( I think html file is better ). Then I can open the file and copy the url | |
amacleod: 16-Jul-2009 | I hate Vista.... Anyone else have this prob: Using altme to share many files. I see them in altme but they do not exist in the proper altme file folder. From what I've gathered Vista with UAC enabled (default) does not allow programs that do not comply with their new security API to write to certain folders such as "program files" whrere Altme is installed. So if I try to open it with notepad, notpad can not see it as it does not really exist in that folder that altme tells notpads that its in. Vista re-routes altme to the "safe" location without altme knowing this. Anyone have a work around... I could turn off UAC but that is suppose to be bad (security reasons). I guess I could move altme to a non secure folder (not sure what that would be? I think the Desktop has the same issues... maybe just C:?? | |
Anton: 3-Jun-2010 | amacleod, I think you saved the file after loading it with a webbrowser or something. Do this instead: load-thru/update url: http://membres.multimania.fr/didec/rebol/altme-chat-reader.r path-thru url and open that file in your editor. | |
Group: RAMBO ... The REBOL bug and enhancement database [web-public] | ||
sqlab: 1-Dec-2006 | I have a slightly modified help, that does not evaluate functions in objects and ports and that also dumps ports like objects. >> a: open http://www.rebol.com connecting to: www.rebol.com >> help a A is a port of value: scheme word! HTTP host string! "www.rebol.com" port-id integer! 80 user none! none pass none! none target none! none path none! none proxy object! [host port-id user pass type bypass] access none! none allow none! none buffer-size none! none limit none! none handler object! [port-flags open-check close-check write-check ini... status word! file size integer! 0 date date! 6-Nov-2006/21:26:44 url string! "http://www.rebol.com/" sub-port port! make port! [ scheme: 'tcp host: "www.rebol.com" po... locals object! [list headers querying] state object! [flags misc tail num with custom index func fpos i... timeout integer! 30 local-ip none! none local-service none! none remote-service none! none last-remote-service none! none direction none! none key none! none strength none! none algorithm none! none block-chaining none! none init-vector none! none padding none! none async-modes none! none remote-ip none! none local-port none! none remote-port none! none backlog none! none device none! none speed none! none data-bits none! none parity none! none stop-bits none! none rts-cts logic! true user-data none! none awake none! none Is there interest in including in the new release? | |
Dockimbel: 30-May-2007 | >> probe info? %script.r/ make object! [ size: 3405 date: 12-Sep-2000/21:40:20+2:00 type: 'file ] >> read %script.r/ ** Access Error: Cannot open /C/Dev/REBOL/script.r/ ** Near: read %script.r/ Shoudn't INFO? return none (or an error) in this case ? | |
Dockimbel: 4-Jun-2007 | specs: info? a-file if specs/type = 'file [ probe read a-file ] ** Access Error: Cannot open /C/Dev/REBOL/script.r/ ** Near: read a-file | |
Group: Core ... Discuss core issues [web-public] | ||
Rebolek: 12-Dec-2005 | Because I'm writing scripts on more than one computer I need to sync files somehow. I can use flashdisk for synchronization, but USB is not always available or I forget my flashdisk at home, so it's not always the right option. Or I can use ftp to upload and download files. But at the end I've got lots of different directories with different versions, because I have no intelligent file structure. I was inspired by Google filesystems for win and lin so I decided to use some freemail (gmail preferably) for my scripts maintaing. Unfortunatly, Gmail needs some authentication, SSL or what and SSL under Rebol needs Command and Command needs 350$ to buy. So I found another freemail provider that offers both non-authenticated SMPT and POP and therefore is OK for REBOL (btw. remeber the old REBOL example? send [luke-:-rebol-:-com] read http://www.rebol.com? Hard to do with all the authetications required today.) and I started coding. The result is a small application called %rspace.r that can upload file to repository, download newest version from repository, or you can get list of all files in repository and finally, if you're happy with your script, you can publish it on www/ftp. All this with documentation in less than 6kB. All you need is REBOL and mail account cappable of SMTP/POP without authentication. It's good to have an FTP account for publishing files but that's not required. If you do not have an mail account, I've set up one on seznam.cz, user 'rebolspace' and pass 'spacerebol' for testing this application (it's built in, so you can start testing right after download). Remember, it's just alpha, does not have many features, but it works, I can write something here, update it there and have all the versions accesible from everywhere. It's written for REBOL scripts so with big projects it's going to be very slow and unusable, but for small project (and most REBOL scripts are really small) it's probably good. So download it form http://krutek.info/rebol/rspace.r(stable) or http://rebolspace.sweb.cz/rspace.r(latest published version). WARNING: because [rebolspace-:-seznam-:-cz] is open account it won't be wise to use it ordinarily. Please, if you like it, set up your own account and use it instead of built-in one. And remember: all suggestions and fixes are welcome. | |
Anton: 12-Apr-2006 | I am trying right now to write a file to an FTP server. What I would like to do is: - open the port - try to write the file - if that fails, create the parent directory if necessary - try to write the file again - close the port | |
Anton: 16-May-2006 | port: open/direct/skip url size ; resume position <- this can fail when file is complete already | |
Rebolek: 19-May-2006 | I though I've got it working but it was a mistake. I'm still not able to use /skip refinement on files succesfully. Does anybody now, if it's possible to OPEN or READ file from some offset? I saw some bug filled in RAMBO two years ago :((( | |
Volker: 19-May-2006 | p: open file p: skip p 123 data: copy p IIRC | |
Rebolek: 24-May-2006 | Why I am not able to OPEN file which I can READ ? | |
Graham: 24-May-2006 | 'read must 'open a file | |
Oldes: 31-May-2006 | Anton, yout ftp patch was not working, but I solved the issue with missing directories using this code: while [ error? set/any 'err try [trgp: open/direct/new/write rejoin [ftp-url trg-dir trg-file]] ][ err: disarm err if all [ err/code = 800 parse err/arg1 [thru "tcp 550 " copy missingdir to ":" to end] ][ print ["Making directory:" join ftp-url missingdir] if error? try [make-dir join ftp-url missingdir][ trgp: none break ] ] ] | |
Will: 29-Aug-2006 | Any idea what can cause this or a good idea how to find the bug? >> read %/ Trace: read (word) Trace: %/ (file) ** Access Error: Trace: "Cannot open" (string) Trace: :arg1 (get-word) Cannot open / ** Where: boot ** Near: read %/ | |
PeterWood: 30-Aug-2006 | The Core Manual ( http://www.rebol.com/docs/core23/rebolcore-17.html )does limit the possible causes a little: 6.3.1 cannot-open A file could not be accessed. This could be a local or network file. Most common reason for this error is a nonexistent directory. | |
Will: 31-Aug-2006 | Thanks to all for bringing some light, it seams actually the problem IS related to file handle limit. Checked with (suggested by Jaime): sudo fs_usage -w -f filesys <process id>|grep 'open\|close' and the number of open and close correspond. Peter suggested "fstat -p <process id>", fortunately fstat isn't there in 10.4 Tiger, so I was looking for a similar tool and found lsof for which I did not find the flag to filter for only uniserve process and there I saw something else was actually consuming file handles.. Sorry Carl to have thought about a rebol error ;-)) Uniserve is rock solid and blazing fast btw. | |
Henrik: 13-Oct-2006 | it wants to find the file in my local cache before the remote one and crashes: >> do http://www.fm.tul.cz/~ladislav/rebol/include.r connecting to: www.fm.tul.cz Script: "Include" (5-Jan-2006/14:31:42+1:00) >> append include-path http://www.fm.tul.cz/~ladislav/rebol/ == [%. %/Volumes/c/rebol/ http://www.fm.tul.cz/~ladislav/rebol/] >> include %spider.r connecting to: www.fm.tul.cz ** Access Error: Cannot open /Volumes/c/rebol/spider.r ** Where: include-script ** Near: found: load/all target if header >> Sorry, if I'm being a little difficult :-) | |
Jerry: 20-Oct-2006 | I would like to know ... 1. How to use the OPEN function with the /SEEK refinement to replace the 1,000,000th byte with the 2,000,000th byte in a file. 2. How to truncate a huge file to its helf size, and keep the head helf only. Thanks. | |
PeterWood: 20-Oct-2006 | My answer to your first question (from reading http://www.rebol.net/article/0199.html ) >> write %testdata "123456789A123456789B" ;; A simple test file >> fp: open/seek %testdata ;; Open the file in seek mode >> fp: skip fp 19 ;; Move to 20th character >> newval: copy fp ;; Copy the 20th character == "B" >> fp: head fp ;; Position at start of file >> change at fp 10 newval ;; Overwrite 10th character >> copy head fp ;; Check change made == "123456789B123456789B" >> close fp >> fp: open %testdata >> copy fp ;; Check file was changed == "123456789B123456789B" | |
Oldes: 22-Jan-2007 | If you backup so many files, you should open just one connection and comunicate with the server. Not to open and close connections for every file. | |
Louis: 7-Jun-2007 | Good progress, then stuck again. I can get one file transferred, but I don't know how to transfer the following files. This is the server (put it in an empty folder): rebol [] print ["This program RECEIVES files sent by send-files-tcp." newline] port-num: request-text/title/default "Port Number: " "2006" url: to-url rejoin ["tcp://:" port-num] received-file: copy first open/binary url write %file-names decompress received-file files: load %file-names foreach file files [ received-file: copy url ;<======== HOW DO I FEED IN THE NEXT FILE? write/binary file received-file print ["Successfully received file: " file] ] ask "The files transfer is complete. Press <Enter> to close." | |
Louis: 7-Jun-2007 | This is the client; put it in the folder containing the files you want to send. rebol [] ip: request-text/title/default "IP Address: " "localhost" port-num: request-text/title/default "Port Number: " "2006" url: to-url rejoin ["tcp://" ip ":" port-num] system/options/binary-base: 64 ; best binary encoding print ["This program SENDS all files in its folder to receive-files-tcp." newline] print "NOTE: receive-files-tcp must be running on the remote" print ["computer before starting this program." newline] files: read %. ; Note that 'files is a block of file names. save %file-names files server: open url insert server compress as-binary read/binary %file-names ;send file names file-block: [] foreach file files [ if not find file "/" [insert file-block file] ;remove folders ] files: file-block foreach file files [ insert server compress as-binary read/binary file print ["Successfully sent file: " file] ] close server ask [newline "The files transfer is complete. Press <Enter> to close."] | |
Geomol: 7-Jun-2007 | Louis, I think, your problem is, that you only operate with one port. When you define a listen port in REBOL, you receive a port from that. This new port can be used to receive the file. Something like: listen-port: open/lines join tcp://: port-num wait listen-port talk-port: first listen-port file: first talk-port close talk-port wait listen-port ... (I haven't tested this code. It's free from a similar program, I made in the past.) | |
Geomol: 7-Jun-2007 | server example: listen-port: open/lines tcp://:8080 wait listen-port p: first listen-port file: load first p close p write/binary %file.r debase first file close listen-port client example: p: open/lines tcp://127.0.0.1:8080 insert p remold [enbase read/binary %hokus-pokus.r] close p | |
Louis: 31-Aug-2007 | From section 11.12 of the Core users manual: inp: open/binary/direct ftp://ftp.site.com/big-file.bmp out: open/binary/new/direct %big-file.bmp buf-size: 200000 buffer: make binary! buf-size + 2 while [not zero? size: read-io inp buffer buf-size][ write-io out buffer size ;<================<<< Where did size come from; this is incorrect, no? total: total + size print ["transferred:" total] ] | |
Steeve: 25-Oct-2007 | it's just a proof of concept, it's not usable as-is for an open/seek file mode | |
Steeve: 25-Oct-2007 | REBOL [] parse-async: func [ file rules /local port buffer offset getf seek meta & && result ][ port: open/seek/binary file buffer: clear #{} offset: 1 getf: func [len][ offset: offset - length? buffer clear buffer append buffer copy/part at port offset len offset: offset + len ] seek: [(offset: offset + 1)] ..: func [blk] [change/part & compose/deep blk && ] parse rules meta: [ some [ &: binary! &&: (.. [buffer: (to-paren reduce ['getf length? &/1]) (&/1)]) :& 3 skip | &: 'skip &&: (.. [seek]) :& skip | &: 'get word! integer! &&: (.. [buffer: (to-paren compose/deep [getf (&/3) set [(&/2)] to integer! as-binary cp buffer]) to end]) :& 4 skip | &: string! &&: (.. [(as-binary &/1)]) :& | 'end 'skip | into meta | skip ] ] result: parse/all buffer rules close port result ] if parse-async %15.jpg [ #{FFD8} ; jpeg Header [ #{FFE0} ;JFIF header get len 2 ;get data length for the current header (2 bytes) "JFIF" ;yeah it's a JFIF (confirmation) (len: len - 6) len skip ;skip data (len) times some [ #{FFC0} ;good ! i found the length properties 2 skip ; skip length of this header skip ; filler ??? always = #{08} get height 2 get width 2 break ; finished | #{FF} skip ;skip this header get len 2 (len: len - 2) len skip | [end skip] ;error format ] | #{FFE1} ;EXIF header get len 2 ;get length of a header ;... to do [end skip] ] to end ][ ?? height ?? width ] halt | |
Oldes: 27-Oct-2007 | get-JPG-size: func[ "Returns size on JPG image or none on invalid files" jpgfile [file! url!] "File to examine" /local stream byte1 byte2][ stream: open/read/binary/direct jpgfile ;seek to jpg start until [ all [ 255 = first stream 216 = first stream ] ] while[any[byte1: first stream]] [ if 255 = byte1 [ either 192 = byte2: first stream [ copy/part stream 3 height: to-integer copy/part stream 2 width: to-integer copy/part stream 2 close stream return as-pair width height ][ copy/part stream ((to integer! copy/part stream 2) - 2) ] ] ] close stream none ] | |
Oldes: 27-Oct-2007 | get-JPG-size: func[ "Returns size of JPG image or none on invalid files" jpgfile [file! url!] "File to examine" /local stream byte ][ stream: open/read/binary/direct jpgfile ;seek to jpg image start until [ any [ all [ 255 = first stream 216 = byte: first stream ] none? byte ] ] unless byte [close stream return none] ;no Start Of Image marker found while[any[byte: first stream]] [ if 255 = byte [ either 192 = byte: first stream [ copy/part stream 3 height: to-integer copy/part stream 2 width: to-integer copy/part stream 2 close stream return as-pair width height ][ copy/part stream ((to integer! copy/part stream 2) - 2) ] ] ] close stream none ] | |
Oldes: 27-Oct-2007 | get-JPG-size: func[ "Returns size of JPG image or none on invalid files" jpgfile [file! url!] "File to examine" /local stream bytes height width ][ stream: open/read/binary/seek jpgfile ;seek to jpg image start while [#{FFD8} <> copy/part stream 2][ if tail? stream: skip stream 2 [ ;no Start Of Image marker found close stream return none ] ] stream: skip stream 2 while[not tail? stream][ bytes: copy/part stream 2 stream: skip stream 2 if 255 = bytes/1 [ either 192 = bytes/2 [ stream: skip stream 3 height: to-integer copy/part stream 2 width: to-integer copy/part skip stream 2 2 close stream return as-pair width height ][ stream: skip stream ((to integer! copy/part stream 2) - 2) ] ] ] close stream none ] | |
Rod: 5-Dec-2007 | Any binary parse wizards ever tried to tackle the on disk file format that postgresql uses to store row data? I'm looking through the docs trying to get a handle on how tough it is. http://www.postgresql.org/docs/8.1/static/storage.html and http://www.postgresql.org/docs/8.1/static/storage-page-layout.html give a fairly detailed starting place, plus the source of course but my C is so rusty I think reviewing the raw data is going to be easier. We are trying to recover some data that was deleted (marked for) by accident. We basically need to find the serial key value and associate it with a text value for each row so we can rebuild the table and not lose the relationships that key off that serial numeric value in other tables. There are some good examples of binary parsing in the rebol.org script library so I know rebol can help write out a text version of the two values if we can get a handle on the structures involved. I'm open to suggestions or advice, this is not critical but would be a nice win to recover the key data. | |
Group: View ... discuss view related issues [web-public] | ||
james_nak: 4-Mar-2005 | Hello, Long time no talk. Is there a way to tell the request-file to open up in a specific directory? | |
Volker: 14-Apr-2005 | can you open a real file with the requester? | |
Anton: 14-Apr-2005 | Here's the problem, surely: button "open" [save-file/? ta sr open-file refresh] | |
Volker: 14-Apr-2005 | open tries to save the last file. it thinks it is modified, instead its missing. but text <> attempt[read file], so.. | |
Josh: 14-Dec-2005 | Do you think editor should always start up with the last open file (i.e. hit ctrl-E on desktop, open a file, close the editor, then hit ctrl-E again) | |
Josh: 14-Dec-2005 | Why do you think so? My natural reaction is to expect something blank, or at least not have to close a file that I don't want open. While you don't "close" a document in editor, I have to sit and think, "is this something that I want to be open right now or not?" I find it disruptive from a UI standpoint | |
Ingo: 5-Apr-2006 | I have set my 'view (1.3.2.3.1 5-Dec-2005 pro) to not open the desktop on startup, now I start it from a windows link like this: C:\Programme\Rebol\View\rebol.exe -s "C:\Dokumente und Einstellungen\ingo\Anwendungsdaten\rebol\start-desktop.r" (You'll imagine, what the script does ;-) Now, if I click on a rebol file which accesses a dll I get a security question whethter I really want to allow access to the dll. shouldn't this be allowed with the -s switch? | |
Group: I'm new ... Ask any question, and a helpful person will try to answer. [web-public] | ||
PatrickP61: 19-Jul-2007 | Getting better, but still no cigar. Here is my test code for Mold-CSV function in CSV.r script: ( I hope this formats correctly on Altme) In-block: [ ; (want in csv file) ; (want in excel) ["Col A1" "Col B1" ] ; Col A1,Col B1 ; Col A1 Col B1 [2 3 ] ; 2,3 ; 2 3 ["'3" "'4" ] ; '3,'4 ; '3 '4 ["4a" "4b" ] ; 4a,4b ; 4a 4b ["^"5a^"^"^"^"" "^"^"^"5b^"^"" ] ; "5a""""","""5b""" ; 5a"" "5b" ["6a x" "6b y" ] ; 6a x,6b y ; 6a x 6b y ["7a, x" "7b,^"^" y" ] ; "7a, x","7b,"" y""" ; 7a, x 7b," y" ["^"8a ^"^",x" "^"8b ^"^"^"^"y^"" ] ; "8a "",x","8b """" y" ; 8a ",x 8b "" y ["^"^"^"9a^"^" x" "^"9b ^"^"y^"^"^"" ] ; """9a"" x","9b ""y""" ; "9a" x 9b "y" ] Out-block: Mold-CSV In-block write %Book2.csv Out-block ____________ In the above, I have 3 "views" if you will of what I am after. The first view is the In-block that I would like Mold-CSV to run against. The second commented view is what I need Mold-CSV to generate to put into the csv file The third commented view is what Microsoft Excel will generate when I open the CSV file. Mold-CSV works fine for the first 6 lines, then it gives me this for lines 7,8 and 9: 7a, x ,{7b,"" y} <-- Where did the braces come for for 7b? {"8a "",x},"8b """"y" <-- Same quest for 8a? 9a x ,"9b ""y""" ok Any ideas on how to solve this? | |
PatrickP61: 19-Jul-2007 | Anton, What do you think of this approach -- I'm just thinking it through and am not sure if I have covered all the bases. Since my input can contain any number of symbols, commas, single and double quotes, and rarely, but possibly braces, what if I attack the problem a different way. Whenever an embedded comma, or double quote or something like that occurs within an spreadsheet cell, it will require some kind of "extra" formatting like two quotes or the like. It may even be that there are unique combinations of such symbols, rare as that would be, to have complex formatting of an input block for rebol to convert it properly for CSV. What if I shift gears and look at a TAB delimited file instead. I know that I will never have TAB embedded in my cells, and that I deal with the entire block as a series instead. I could embed TAB wherever needed to separate the columns and leave the remaining string the way it is. Would that work, or would I still need to do some formatting to handle it. I think I'll open an excel spreadsheet, and work in reverse to see what it needs for TAB delimited file. Any comments? | |
RobertS: 31-Aug-2007 | ; I did a dif between the functions in VIEW and those in CORE for a default install. What I get is this ( I hope it is useful to have al 106 in one place ) alert brightness? caret-to-offset center-face choose clear-face clear-fields confine crypt-strength? dbug deflag-face desktop dh-compute-key dh-generate-key dh-make-key do-events do-face do-face-alt do-thru draw dsa-generate-key dsa-make-key dsa-make-signature dsa-verify-signature dump-face dump-pane edge-size? editor emailer exists-thru? find-key-face find-window flag-face flag-face? flash focus get-face get-net-info get-style hide hide-popup hilight-all hilight-text hsv-to-rgb in-window? inform insert-event-func inside? install launch-thru layout link-relative-path load-image load-stock load-stock-block load-thru local-request-file make-face notify offset-to-caret open-events outside? overlap? path-thru read-net read-thru remove-event-func request request-color request-date request-dir request-download request-file request-list request-pass request-text reset-face resize-face rgb-to-hsv rsa-encrypt rsa-generate-key rsa-make-key screen-offset? scroll-drag scroll-face scroll-para set-face set-font set-para set-style set-user show show-popup size-text span? stylize textinfo unfocus uninstall unlight-text unview vbug view viewed? win-offset? within? | |
SteveT: 12-Jan-2008 | Perspectives of a newbie! By Steve Thornton (SteveT) Hi! everyone, as someone brand new to REBOL I've been asked to log a journal describing my experiences using REBOL. I think the first thing to get out of the way is to tell you where I'm coming to REBOL from. I've programmed on and off for over twenty years starting with Clipper 5 (dBaseII), Visual Basic (Access), C# (SQL Server), Java(NetBeans + JavaDB). I've worked in a variety contract/freelance work. I earn approx half my income form 'Thornton Software' and I work for Iris Software Group - as a training consultant (training accountants :-\ someone has to do it!) I can hear some of you saying 'Ahh! he's an IDE wimp - real men/women code from scratch'. It was strange - every language I've used had an IDE and I was a bit put off having to go find myself an editor. Until something better find's me I'm using the freebie 'CREdit' as recommended by Sunanda. The easiest way to edit/test the scripts is to open an explorer window at the side of the CREdit window showing my scripts folder. I can then drag a .r file onto the CEdit screen and it opens it. To run the script I double-click it in the explorer window. The help and documentation available is better than I have previously experienced. Some of the components I've been wow'ed by so far is Henriks List-View and RebDb from Dobeash. I've looked at RebGUI and for the time being I would prefer not to use anything on top of VID, I need to learn pure VID before using anything else. REBOL Cookbook of examples is a useful place to start. Some more form oriented examples would be cool. Example 014 - 'Open two windows' and Example 10 - 'Simple text form window' are both useful The Event Handling guide is a good resource for programmers moving from Visual Studio etc.. That's more than enough to be going on with, next time I'll cover my experiences with VID, FACES and handling Events. Bye for now. Steve Thornton | |
mhinson: 7-May-2009 | A question: if I want to provide a dialoge to navigate to a directory can I call up the ms windows file open & save dialogs, or do I have to do it all in rebol. I cant find any examples of this & dont have the skills to create my own... I like the idea of having a GUI interface, but I may have to go back to command line if it is too hard for me :-) | |
Sunanda: 7-May-2009 | File open dialog is simple. source request-file :-) | |
DKnell: 21-Jun-2010 | Graham, are you you using the xp rebol/view ? try the hellowworld.r script in beginner, left click the file, the script runs, but the cli/output window does not stay open. | |
alemar: 18-Jan-2011 | >> do %/C/users/alemar/download/test.r ** Access error: cannot open: %/C/users/alemar/download/test.r reason: -3 ** Where: read either read-decode case load -apply- do ** Near: read source if find system/options/file-types type [data: de... | |
todun: 8-Oct-2011 | ** Access Error: Cannot open file.txt ** Where: forever ** Near: were: read/lines %were-file.txt | |
Henrik: 8-Oct-2011 | ** Access Error: Cannot open file.txt ** Where: forever ** Near: were: read/lines %were-file.txt That is possibly because file.txt does not exist and you are trying to read it somewhere near that line of code. | |
todun: 8-Oct-2011 | @Henrik, I see. I will try to better trace the path the file takes to open. thanks. | |
Group: Make-doc ... moving forward [web-public] | ||
shadwolf: 6-Apr-2005 | Now next evolution of the rendering system mut be a fusion betwin the MDP raw format and the MDP to VID renderer. In order to have on one panel that display the doc. Ths will lead me to write a multi file handler as we have only one panel for each open document. Save wil be made by default in .txt files and you still get the possibility to render HTML when you judge the document is publicable | |
Group: Parse ... Discussion of PARSE dialect [web-public] | ||
Oldes: 30-Jul-2010 | load-first-block2: func[file /local port buffer result tmp ][ port: open/direct file buffer: copy "" result: none chunks: 0 until [ chunks: chunks + 1 if any [ chunks > 10 none? tmp: copy/part port 512 ] [close port return none] insert tail buffer tmp not error? try [result: first load/next buffer] ] close port result ] | |
Pekr: 31-Jul-2010 | what about using something like open/seek at port ((size? file) - chunk-size) chunk-size? | |
Group: MySQL ... [web-public] | ||
GrahamC: 22-Sep-2011 | mysql problem what does this error mean? Hello, I am just looking at REBOL and trying to access mysql I got this error?? =================================== connecting to: 127.0.0.1 ** User Error: ERROR 1251 : Client does not support authentication pro tocol requested by server; consider upgrading MySQL client ** Near: db: open mysql://[rootass-:-127-:-0-:-0-:-1]:3306/mysql ============================================== This the code I am using from rebol document Rebol[ title: "Rebol Mini-Text Database with Visual GUI" author: "http://reboltutorial.com/blog/rebol-mini-text-database/" version: 1.0.0 ] do %mysql-protocol.r probe first system/schemes db: open mysql://[rootass-:-127-:-0-:-0-:-1]:3306/mysql insert db { DROP TABLE IF EXISTS products; CREATE TABLE products ( name VARCHAR(100), version DECIMAL(2, 2), released DATE ); INSERT INTO products VALUES ('cheyenne', '1.0', '2007-05-31'); INSERT INTO products VALUES ('mysql', '1.1', '2007-05-01'); } insert db read %setup.sql ;-- execute a big SQL file | |
Group: Syllable ... The free desktop and server operating system family [web-public] | ||
Graham: 20-Oct-2007 | That was a short experiment. I tried to open up the file in Ubuntu, and it said it was an unrecognized file type ( .7z ). | |
ddharing: 29-Aug-2010 | Thanks. The only open source package missing for my current project is sqlite. I downloaded the SO binary from http://sqlite.org, but haven't tested it yet because I still need to purchase the REBOL/SDK for Linux. My Windows SDK license file doesn't work. :) As you know, REBOL/Core doesn't support library access. | |
Group: Linux ... [web-public] group for linux REBOL users | ||
ManuM: 9-May-2009 | Henrik: If you are talking about bug#779 I have added a comment at bug http://curecode.org/rebol3/ticket.rsp?id=779&cursor=1 Something similar can be: open-file-manager: funct [ dir ][ call reform [ "xdg-open" dir ]] | |
Ashley: 23-Jul-2009 | OK, so I've downloaded Ubuntu 9.04 (64bit) and got it running under VirtualBox, then I download and untar/zip the REBOL SDK and open a console session. cd to the REBOL dir and do a chmod +x and type ./rebview ... which comes back with a "file or dir not found message" ... anything else I need to do to get REBOL working? Oh, and what font looked best with RebGUI in your opinion? | |
Andreas: 2-Apr-2010 | Barik: replace browse with browse: func [ "Open web browser to a URL or local file" url [url! file!] ] [ if file? url [url: to-local-file url] call join "xdg-open " probe url ] | |
Andreas: 2-Apr-2010 | Ahem, maybe even without the probe :): --- browse: func [ "Open web browser to a URL or local file" url [url! file!] ] [ if file? url [url: to-local-file url] call join "xdg-open " url ] --- | |
Janko: 19-Apr-2010 | there is rebcmd.. when I run it it shows /usr/share/cheyenne/rebol-sdk-276/tools/rebcmd: error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory is rebcmd the "main" reb pro VM? | |
Graham: 29-May-2010 | The file is in those debian packages ..but how to open a deb in Suse? | |
caelum: 31-Aug-2010 | I have been playing with this for hours and have not made any progress after reading everything I could find about ports and ftp. Why does the following script not work? ftp-port: open [ scheme: 'ftp host: "ftp.mysite.org" port-id: 21 user: "[user-:-mysite-:-org]" pass: "xxxxxxxxxx" ] write ftp-port "Test File" close ftp-port It gives the following error. ** Script Error: write expected destination argument of type: file url object block ** Where: func [face value] | |
Maxim: 1-Sep-2010 | remote-spec: [scheme: 'ftp host: "ftp.mysite.org" user: "[user-:-mysite-:-org]" pass: "xxxxxxxxxx"] local-file: %text.txt source-port: open/binary/direct/read local-file ; BINARY mode print "Attempting FTP connection..." target-port: open/binary/direct/new/write remote-spec ; BINARY mode insert target-port copy source-port attempt [close target-port] attempt [close source-port] | |
Group: Web ... Everything web development related [web-public] | ||
Louis: 3-Mar-2005 | If I try to open the downloaded file from my harddrive with Foxfire, I get an error message saying the file cannot be found! But it is there and can be opened with my text editor. | |
Group: Announce ... Announcements only - use Ann-reply to chat [web-public] | ||
shadwolf: 16-Sep-2005 | New editor that support REBOL colored syntax file. This sofware is SCITE 1.66 for linux and windows by default REBOL support is not activated. edit /usr/share/scite/ScitEGlobal.properties file ( MenuBar Options > Open Global options File) search the line "#import rebol.porperties" and remove "#". Save changes (SCITE must be launched from a root terminal.) then edit /usr/src/rebol.properties file. Go to the last line of this file and set the proper path to your predered rebol VM version in the command.go.($file.patterns.rebol)=.... Save the rebol.properties file ( this file can be located from Menubar Options>Edit properties>open rebol.properties). Once you make all those changes you are able to see rebol color syntax for your beloved rebol scripts. the scripts are launched into the rebol VM hitting F5 key in SCITE. You will notice that the color syntaxe is very more advanced than the Crimson Editor one. And you have the ability to hide the functions/objects inside code to make easier to read the script code. Well this is the concret sign that REBOL is being more and more considered in computing world. This is a good thing and a good reward for RT hard work. | |
Louis: 19-Sep-2006 | rebol [ Title: "Stopwatch" Date: 23-Mar-2005 Version: 1.0.0 File: %stopwatch.r Author: "Louis Turk" Purpose: "Simple desktop stopwatch." ] kbhit: does [ con: open/direct/binary/no-wait console:// until [wait con] choice: to-char pick con 1 close con choice ] forever [ prin "Hit any key to start: " kbhit start-time: now/time/precise print [start-time] prin ["Hit any key to stop : "] kbhit end-time: now/time/precise print [end-time] print [newline newline end-time - start-time newline newline] ] | |
Louis: 19-Sep-2006 | rebol [ Title: "Stopwatch" Date: 19-Sep-2006 Version: 2.0.0 File: %stopwatch.r Author: "Louis Turk" Purpose: "Simple desktop stopwatch." history: "v.2 works across midnight thanks to Gabriele" ] kbhit: does [ con: open/direct/binary/no-wait console:// until [wait con] choice: to-char pick con 1 close con choice ] forever [ prin "Hit any key to start: " kbhit start-time: now/precise print [start-time] prin ["Hit any key to stop : "] kbhit end-time: now/precise print [end-time] print [newline newline difference end-time start-time newline newline] ] | |
Louis: 11-Oct-2006 | REBOL [ Title: "Slideshow" Date: 12-Oct-2006 Name: 'SLIDESHOW ; For window title bar Version: 1.0.0 File: %slideshow.r Author: "Louis A. Turk" Rights: "Public Domain; use at your own risk." Needs: "A version of REBOL/VIEW supporting sound" Purpose: {To make possible simple, easy to make narrated slide shows. Hopefully can be used with the REBOL plugin to show narriated slides on a web site. Hopefully can an effective tool to teach REBOL programming. } Note: { The concept and design originated with Louis A. Turk. DideC helped considerably by answering programming questions and giving bits of code; it would not have been possible without his help. Josh also answered programming questions. You can make wav files using the free program Audacity. http://audacity.sourceforge.net Advanced JEPG Compressor does and excellent job compressing graphics files so they load faster, but is not free. } History: [ 1.0.0 [ "First release." "Louis"] ] Language: 'English ] ;Requires a data file named %slides.r containing lines of blocks in the following format: ;Each block must contain: (1) slidename, (2) overlay, (3) caption, (4) sound. ;Example block: [%slide1.jpg "Overlay text." "A caption!" %sound.wav] ;Use "" for no overlay or caption. ;file: request-file/title/only "Select the slides data file to use." "Select Data File" file: %slides.txt ;uncomment the above line, and comment this one to select data files with different names. slides: load file narrate: func [talk] [ ;--- Manage the sound sound-port: open sound:// insert sound-port load talk wait sound-port close sound-port ] view/new win: layout/size [] 650x650 ;<= Set the max size you need wait 0 ;---Initialize REBOL's internal event handler. foreach slide slides [ ;--- Start the slide show set [graphic overlay caption narration] slide lay: layout [ origin 0 banner center bold red "A REBOL Produced Narriated Slide Show" image graphic overlay 500x400 frame black [unview] [quit] text 500 bold caption button "Quit" center [quit] ] center-face/with lay win append clear win/pane lay show win narrate narration ] do-events | |
Maxim: 21-Feb-2007 | REMARK HAS NOW FINALLY BEEN RELEASED ON THE STEEL WEB SITE REMARK is a robust web site building tool which allows you to construct your own custom tags using rebol values and dialecting. The main difference of remark with other tools of its kind, is that the web pages do not contain code, they contain data or parameters to your custom tags. Remark also persistently reparses tags until no more custom tags exist in the dialected tags you create. this means you can actually build up your pages with custom which use custom tags themselves... talk about leverage! at version 1.3.5 it support multiple site configs, ftp dumping, site specific configuration, and the very flexible remark engine itself. Creating tags is trivial and for simple templating, you don't even need to know how to code in rebol... just html content within stored files can be nested within your site's pages and will be included, by simply adding a tag which is called like the stored html. Using differently named source file extensions you can even decide to parse the content differently, so that you can create different page templates or one can even decide to create a make-doc handler for example (its not included by default, just possible if you need it). you can check-out the FULL documentation, including tutorial, example site, reference page and guides on adding new tags and templates. here: http://www.pointillistic.com/open-REBOL/moa/steel/retools/index.html | |
Chris: 21-Apr-2007 | Introducing QuarterMaster: Yet Another Web Framework that I'm probably going to have to take time to document properly: http://www.ross-gill.com/QM/ In short, it is designed around the MVC pattern. It is open source (license tbd). Tries to be lightweight, but could use some work. Tries to be as thin a wrapper to Rebol (/Core, /Base, whatever) while providing key functions for creating web sites/applications. Includes a flat-file dbms out the box, which generally works. Currently coded to work with Apache (needs mod-rewrite and 'request-uri' env variable), but should eventually be httpd agnostic. Please try, please test. I will answer all and every question (within reason). All suggestions considered with an open mind... Group: !QM | |
Maxim: 2-Oct-2010 | RENOTE beta. :-) Just for Reichart. here is a zip file: http://www.pointillistic.com/open-REBOL/moa/files/renote.zip just unpack and run Renote.r using rebol 2.7.7 (might work with earlier versions... untested) | |
Maxim: 4-Oct-2010 | Renote v0.9.2 Adds many little improvement, bug fixes, and you can now export the whole view into an ascii file. Filtering is much improved (its interactive everywhere) same download url pics: http://www.pointillistic.com/open-REBOL/moa/files/renote-1.png http://www.pointillistic.com/open-REBOL/moa/files/renote-2.png http://www.pointillistic.com/open-REBOL/moa/files/renote-3.png http://www.pointillistic.com/open-REBOL/moa/files/renote-4.png http://www.pointillistic.com/open-REBOL/moa/files/renote-5.png | |
Group: SDK ... [web-public] | ||
BrianH: 27-Jun-2006 | Well, it's nice that they are semi-supported through a filename hack that is actually in the underlying APIs that REBOL calls internally, but it is not supported through the actual mechanism REBOL uses for supporting that kind of thing on other platforms, and so is not portable. Try get-modes %file 'forks or the /custom refinement to open, read or write with the [fork "forkname"] parameter. On platforms other than Mac there is generally only one fork ("data") but if the code you write is fork-aware it will be portable. This is the method that REBOL should be using to support streams on NTFS or any equivalent feature on other OSes' file systems. | |
Pekr: 1-Aug-2006 | What does this mean, please? I just tried to upgrade to latest SDK, as I use Command on my Linux Fedora Core 1, and older Rebol does not know 'unless (which is used in sqlite.r driver). But I got following error: ./rebcmd: error while loading shared libraries: libstdc++-libc6.2-2.so.3: cannot open shared object file: No such file or directory | |
Maarten: 11-Nov-2007 | /rebcmd: error while loading shared libraries: libstdc++-libc6.2-2.so.3: cannot open shared object file | |
Rondon: 14-Jan-2012 | REBOL [ Title: "ARCFOUR and CipherSaber" Date: 17-Jan-2004 File: %arcfour.r Author: "Cal Dixon" Purpose: {Provides encryption and decryption using the ARCFOUR algorithm} Note: {this implementation can decrypt data at about 40KB/s on my 1Ghz AMD Duron system with Rebol/View 1.2.10.3.1} Library: [ level: 'advanced platform: 'all type: [function module protocol] domain: [encryption scheme] tested-under: [view 1.2.10.3.1 on [W2K] by "Cal"] license: 'PD support: none ] ] ;ARCFOUR specification: http://www.mozilla.org/projects/security/pki/nss/draft-kaukonen-cipher-arcfour-03.txt ;CipherSabre specification: http://ciphersaber.gurus.com/faq.html#getrc4 arcfour-short: func [key [string! binary!] stream [binary! string!] /mix n /local state i j output swap addmod sz][ swap: func [a b s /local][ local: sz s a poke s a + 1 to-char sz s b poke s b + 1 to-char local ] addmod: func [ a b ][ a + b // 256 ] sz: func [ s a ][ pick s a + 1 ] state: make binary! 256 repeat var 256 [ insert tail state to-char var - 1 ] j: 0 loop any [ n 1 ] [ i: 0 loop 256 [ swap i j: addmod j add sz state i sz key i // length? key state i: i + 1] ] i: j: 0 output: make binary! length? stream repeat byte stream [ swap i: addmod i 1 j: addmod j sz state i state insert tail output to-char xor~ byte to-char sz state addmod (sz state i) (sz state j) ] clear state return output ] make root-protocol [ addmod: addmod: func [ a b ][ a + b // 256 ] sz: func [ s a ][ pick s a + 1 ] swap: func [a b s /local][ local: sz s a poke s a + 1 to-char sz s b poke s b + 1 to-char local ] ins: get in system/words 'insert i: 0 j: 0 open: func [port][ port/state/tail: 2000 port/state/index: 0 port/state/flags: port/state/flags or port-flags port/locals: context [ inbuffer: make binary! 40000 state: make binary! 256] use [key n i j] [ key: port/key n: port/strength repeat var 256 [ ins tail port/locals/state to-char var - 1 ] j: 0 loop any [ n 1 ] [ i: 0 loop 256 [ swap i j: addmod j add sz port/locals/state i sz key i // length? key port/locals/state i: i + 1 ] ] ] i: j: 0 ] insert: func [port data][ system/words/insert tail port/locals/inbuffer data do [] ] copy: func [port /local output][ output: make binary! local: length? port/locals/inbuffer loop local [ swap i: addmod i 1 j: addmod j sz port/locals/state i port/locals/state ins tail output to-char sz port/locals/state addmod (sz port/locals/state i) (sz port/locals/state j) ] local: xor~ output port/locals/inbuffer clear port/locals/inbuffer local ] close: func [port][ clear port/locals/inbuffer clear port/locals/state clear port/url clear port/key] port-flags: system/standard/port-flags/pass-thru net-utils/net-install arcfour self 0 ] arcfour: func [key stream /mix n /local port][ port: open compose [scheme: 'arcfour key: (key) strength: (n)] insert port stream local: copy port close port return local ] ; CipherSaber is an ARCFOUR stream prepended with 10 bytes of random key data ciphersaber: func [ key stream /v2 n ][ arcfour/mix join key copy/part stream 10 skip stream 10 either v2 [ any [ n 42 ] ][ 1 ] ] | |
Group: !RebGUI ... A lightweight alternative to VID [web-public] | ||
Ashley: 20-Sep-2005 | Latest build available at: http://www.dobeash.com/files/RebGUI-037.zip Issue log: http://www.dobeash.com/it/rebgui/issues.html *** Unzip this file into your existing RebGUI 0.3.0 distribution. Requires View 1.3.1 *** Highlights include: - Close handler refinement added to display function - Closing the main window when more than one is open now prompts for confirmation - New 'after keyword added to layout (helps with displays that arrange widgets in one or more columns) - Fixed major bugs with 'at positioning and window size determination - Couple of layout 'reverse bugs fixed - Documentation updated to reflect above changes - Number of minor bug fixes In the works - revamped focus system - basic menu widget - context menu widget - field-level validation - stabilize existing code-base for 0.4.0 beta release | |
Ashley: 7-Dec-2005 | Latest build available at: http://www.dobeash.com/files/RebGUI-038.zip Issue log: http://www.dobeash.com/it/rebgui/issues.html *** Unzip this file into your existing RebGUI 0.3.0 distribution. Requires View 1.3.1 (1.3.2 preferred) *** This is mainly a bug-fix release with a new prototype event trigger system (see %"Demo - actions.r") and a very early proof of concept bubble-menu (see %"Demo - bubble-menu.r"). I'm particularly keen to see whether the event trigger system is flexible enough to remove [or reduce] the need for a dedicated (and hard to design / implement) one-size-fits-all "field validation" system as discussed previously. The bubble-menu demo shows how transparency and event detection within a non-square area *could* be done. The implementation is not perfect (or anywhere near usable) so I'm open to alternate design suggestions! ;) | |
Pekr: 2-Jan-2006 | anton, what is the problem with checksum? It depends on syncing strategy, but you have those files on both side (client, server) anyway. afaik, the problem with checksum could be its speed. But since we have open/seek, we could do checksumming defined,e.g. 3 parts of files, first xy bytes, last xy bytes and defined skip somewhere to the middle of the file ... dunno if it would work though :-) | |
Robert: 16-Apr-2006 | Here is a short example when it fails: rebol [] ;--- Startup if system/product == 'Link [ attempt [call reduce ["d:\rebol\view\rebol.exe" system/script/header/file] quit] attempt [call reduce ["c:\programme\rebol\view\rebview.exe" system/script/header/file] quit] attempt [call reduce ["c:\rebol\view\rebol.exe" system/script/header/file] quit] quit ] ;-- use xpeers framework structure link-root: first split-path system/script/path link-root: copy/part link-root index? find link-root "/xpeers/" append link-root %xpeers/ do link-root/framework/anamonitor300.r do link-root/framework/slim.r ;-- RebGUI stuff #include %rebgui.r unless value? 'ctx-rebgui [do link-root/framework/libraries/rebgui.r] ;-- SLIM stuff slim/open 'debug none ; [mark-my-words] ; mark-my-words/init unit-size: 4 font-size: 12 tab-size: 120x55 display/min-size "CalcIT" compose/deep [ label "Land" drop-list 60 data ["A" "B"] return ] 1024x768 do-events halt | |
Group: DevCon2005 ... DevCon 2005 [web-public] | ||
Luca: 5-Oct-2005 | I thougth that they open client connections to download files while keep an open server port to let others download from its. it would be interesting to understand how a client that share a file open a client connection. I mean where it connects to. | |
Group: Rebol School ... Rebol School [web-public] | ||
PatrickP61: 28-Apr-2009 | I need a little help to figure something out. I have been using R3 for some time and I have a small mystery I can't figure out. Some time ago, I created a script called REBOL.r3a which simply invoked the r3-curr.exe file (which is currently a copy of the r3-a49.exe that was just released). This script was simply defined a path for the T variable: t: does [do %test.r] my purpose was to simply type the letter T to invoke the test.r script as a quick way of running it while I had the test.r script open in an editor on a separate window. | |
Claude: 1-Jun-2010 | REBOL[] send: func [ "Send a message to an address (or block of addresses)" ;Note - will also be used with REBOL protocol later. address [email! block!] "An address or block of addresses" message "Text of message. First line is subject." /only "Send only one message to multiple addresses" /header "Supply your own custom header" header-obj [object!] "The header to use" /attach "Attach file, files, or [.. [filename data]]" files [file! block!] "The files to attach to the message" /subject "Set the subject of the message" subj "The subject line" /show "Show all recipients in the TO field" /local smtp-port boundary make-boundary tmp from ][ make-boundary: does [] if file? files [files: reduce [files]] ; make it a block if email? address [address: reduce [address]] ; make it a block message: either string? message [copy message] [mold message] if not header [ ; Clone system default header header-obj: make system/standard/email [ subject: any [subj copy/part message any [find message newline 50]] ] ] if subject [header-obj/subject: subj] either none? header-obj/from [ if none? header-obj/from: from: system/user/email [net-error "Email header not set: no from address"] if all [string? system/user/name not empty? system/user/name][ header-obj/from: rejoin [system/user/name " <" from ">"] ] ][ from: header-obj/from ] if none? header-obj/to [ header-obj/to: tmp: make string! 20 if show [ foreach email address [repend tmp [email ", "]] clear back back tail tmp ] ] if none? header-obj/date [header-obj/date: to-idate now] if attach [ boundary: rejoin ["--__REBOL--" system/product "--" system/version "--" checksum form now/precise "__"] header-obj/MIME-Version: "1.0" header-obj/content-type: join "multipart/mixed; boundary=" [{"} skip boundary 2 {"}] message: build-attach-body message files boundary ] ;-- Send as an SMTP batch or individually addressed: smtp-port: open [scheme: 'esmtp] either only [ ; Only one message to multiple addrs address: copy address ; remove non-email values remove-each value address [not email? :value] message: head insert insert tail net-utils/export header-obj newline message insert smtp-port reduce [from address message] ] [ foreach addr address [ if email? addr [ if not show [insert clear header-obj/to addr] tmp: head insert insert tail net-utils/export header-obj newline message insert smtp-port reduce [from reduce [addr] tmp] ] ] ] close smtp-port ] resend: func [ "Relay a message" to from message /local smtp-port ][ smtp-port: open [scheme: 'esmtp] insert smtp-port reduce [from reduce [to] message] close smtp-port ] build-attach-body: function [ {Return an email body with attached files.} body [string!] {The message body} files [block!] {List of files to send [%file1.r [%file2.r "data"]]} boundary [string!] {The boundary divider} ][ make-mime-header break-lines file val ][ make-mime-header: func [file] [ net-utils/export context [ Content-Type: join {application/octet-stream; name="} [file {"}] Content-Transfer-Encoding: "base64" Content-Disposition: join {attachment; filename="} [file {"^/}] ] ] break-lines: func [mesg data /at num] [ num: any [num 72] while [not tail? data] [ append mesg join copy/part data num #"^/" data: skip data num ] mesg ] if not empty? files [ insert body reduce [boundary "^/Content-type: text/html^/^/"] append body "^/^/" if not parse files [ some [ (file: none) [ set file file! (val: read/binary file) | into [ set file file! set val skip ;anything allowed to end ] ] ( if file [ repend body [ boundary "^/" make-mime-header any [find/last/tail file #"/" file] ] val: either any-string? val [val] [mold :val] break-lines body enbase val ] ) ] ] [net-error "Cannot parse file list."] append body join boundary "--^/" ] body ] | |
Group: Tech News ... Interesting technology [web-public] | ||
onetom: 30-Aug-2011 | a little lighter topic: http://www.sublimetext.com/2 the best generic code editor ever and it's CROSS PLATFORM since the beginning of the year and it's beta already! im using it for a day and no bugs so far. it costs 60 USD to get rid of the "buy me" dialog after every 50th save, but that's the only pain point, i think. here is the list why i love it: - knows save on focus lost - have the intelligent filename search (with instant file preview!!!) - can open full folders (no need to create a project for it explicitely!!!...) - handles proportional fonts - handles double width characters (chinese for example) - beautiful default color scheme with black background - distraction free "zen" mode - no stupid dialog box config - cross platform; which is good because - i can remote control less advanced users no matter what is their platform - i can use the same interface and shortcuts on every platform; no annoyance on switching - not extremely bloated yet... | |
Group: !REBOL3-OLD1 ... [web-public] | ||
Anton: 11-Apr-2006 | net-utils/net-log join "Type: " type: any [ all [new-dir? 'new-dir] all [new? 'new] all [dir-read? port 'dir] all [port/state/flags and system/standard/port-flags/open-append <> 0 'app] 'file ] do select [ file [ confirm-cmd port either port/algorithm = 'nlst [nlst-check] [list-check] accept-connect port type parse-dir-list port if tmp: select locals/dir-cache to-file port/target [ port/status: first tmp port/date: third tmp if any [none? port/size: second tmp 1024 > port/size] [port/size: 0] ] data-connect port confirm-cmd port binary-type-check if 0 < cmd-port/state/index: port/state/index [ confirm-cmd port restart-check ] confirm-cmd port read-check ] new [confirm-cmd port write-check] new-dir [confirm-cmd port mkdir-check] dir [confirm-cmd port either port/algorithm = 'nlst [nlst-check] [list-check]] app [confirm-cmd port append-check] ] type accept-connect port type if type = 'dir [ port/size: port/state/tail: parse-dir-list port ] ] port ] close: func [port /local cmd-port cache-size][ cmd-port: port/locals/cmd-port if not dir-read? port [error-try? [confirm-transfer port]] net-utils/net-log reform ["Caching cmd-port" cmd-port/host cmd-port/local-port cmd-port/remote-port] cmd-port/host: cmd-port/locals/tuple | |
Chris: 27-May-2007 | It's a shame that menus have to be reinvented -- every system View runs on has a menu structure built in, and I'd rather use that than rolling our own. Especially on OS X. Our interface could be eg. a dialect attached to a window containing features common in menu systems: view/menu layout [...]["File" ["New" ["Document" "Template"] "Open" ctrl #"O" (does this) "Open Recent" get-recent-docs]] | |
Geomol: 13-Aug-2007 | Some more output from the R3 console: >> length? system/words == 1296 >> ? system/datatypes SYSTEM/DATATYPES is a block of value: [end! unset! none! logic! integer! decimal ! percent! money! char! pair! tuple! time! date! string! binary! file! email! ur l! tag! issue! bitset! unicode! vector! image! block! paren! path! set-path! get -path! lit-path! dictionary! datatype! typeset! word! set-word! get-word! lit-wo rd! refinement! native! action! routine! rebcode! op! closure! function! frame! object! module! error! task! port! gob! event! handle! struct! library! utype!] >> ? system/view/event-types SYSTEM/VIEW/EVENT-TYPES is a block of value: [ ignore interrupt device custom error init open close connect accept read write wrote lookup ready done time show hide offset resize active inactive minimize maximize restore move down up alt-down alt-up aux-down aux-up key key-up scroll-line scroll-page drop-file ] | |
Group: !Cheyenne ... Discussions about the Cheyenne Web Server [web-public] | ||
Terry: 27-Oct-2007 | Worked out the other issue.. Flash requires crossdomain.xml file to be delivered up by Cheyenne when running Flash that uses xml.Socket (like RASH). Butt it's working well now.. and very cool. Works like this.. I run my local copy of Framewerks with embedded Cheyenne server, and park the GUI on any server (always accessible, single point of bug fixing etc.) for all to use.. currently it's here http://kommonwealth.com/exper/gui.html Now, it wont work for you 'cuz you're not running framewerks.. but if you were.. you could type into the box "codes" and it would open the RASH code file, on your desktop, using your favorite text editor. But wait.. there's more... In my local code.txt file i have the following line PnG "testing" ][bout: {<pre>ok this works</pre>} makeXML ['DISPLAY 'MSG "testing works here"]] So when I open another browser, and point it to http://localhost/ testing that line is fired (more on all this later).. Which does two things.. it outputs "ok this woks" to this second localhost page .. BUT (and this is the cool part) it sends the "testing works here" into the panel on the first kommonwealth page. In other words, Im able to PUSH data to the remote page at ANY TIME.. this will make for the ultimate in portal pages. And.. if that's not enough, Im able to pass messages to the DOM via javascript to the kommonwealth page as well. Allowing things like sliding in panels.. fading div elements moving images.. whatever. So.. remote page can manipulate my computer.. run apps, do any Rebol, reboot .. whatever.. and the local desktop can manipulate a remote web page. Finally. | |
Dockimbel: 20-Dec-2007 | HOW-TO make Cheyenne work with PHP for non-Windows OS The purpose of the following patch is to make FastCGI in PHP work the same on all OSes. 1) If you have PHP v5.2.1 or higher with sources, you can skip 2) & 3) else : 2) Download latest PHP sources from http://www.php.net/downloads.php 3) Untar the archive anywhere yo want 4) Go to PHP install folder 5) Patching PHP source : Open a REBOL console, then : ;---- cut'n paste the following code in REBOL's console ---- patch-php: has [buffer pos][ target: %sapi/cgi/fastcgi.c if none? attempt [buffer: read target][ print "unable to find the file to patch!!" exit ] either parse buffer [ thru "int fcgi_accept_request(" to "if (req->fd >= 0) {" pos: to end ][ insert pos "^/^-^-^-^-break;^/^-^-^-^-" write target buffer print "patch applied." ][ print "failed to locate the line to patch!!" ] ] patch-php ;---- end of code ---- 6) Once the patch is applied : > ./configure --enable-fastcgi > make > sudo make install 7) Check if everything is ok : > php-cgi -h ... you should see a -b option listed meaning you got proper FastCGI support. If it fails (occured on OSX), try with a full path instead : > /usr/local/bin/php-cgi -h 8) Edit Cheyenne's config file (httpd.cfg) to set the correct option in the PHP section. Non-Windows users have to also set the new 'delay option. | |
Dockimbel: 13-May-2008 | Hi guys, there's a tiny issue with Cheyenne running on 2.7.6 due to a bug fixed in EXTRACT. To fix it just open %HTTPd.r file and find the following line : | |
Henrik: 16-Oct-2008 | Error 500 Access Error Cannot open <my file here> Near do %../../html.r Where: protected-exec | |
Endo: 7-May-2009 | I used a file monitor and found the reason, it tries to load mcvcrt7.dll (visual c 7 runtime dll) can't find it and gives error with "can't open service.dll" | |
Dockimbel: 21-May-2009 | Having the TCP/IP part open-sourced in R3 will be great. It will allow to use much faster OS hooks for file transfers, extend the port! API to bind only on selected interfaces, etc...I wonder if the main event loop will be there also, so we can replace the not-scalable Select( ) call by other faster ones or even integrate libevent. That would definitely make Cheyenne able to handle a much higher number of connections. | |
Group: DevCon2007 ... DevCon 2007 [web-public] | ||
Cyphre: 16-Jun-2007 | foreach file [ %01_opening1.mov %02_opening2.mov %03_carl1_1.mov %04_Carl1_2.mov %05_Francois.mov %06_Maxim1.mov %07_Carl2.mov %08_Ladislav.mov %09_Sunanda.mov %10_Carl3.mov %11_Reichart.mov %12_Maxim2.mov %13_Ron.mov %14_Nicolas.mov %15_Concluding.mov ] [ if error? try [ in: open/direct/binary join http://ead.ephe.sorbonne.fr:81/R7/ file out: open/new/direct/binary/write file len: to-integer (to-integer in/locals/headers/content-length) / 1024 siz: 0 chunk: 4096 print "" while [data: copy/part in chunk][ siz: siz + length? data print ["^(1B)[Awriting file:" file to-integer siz / 1024 "KB of" len "KB..." ] insert tail out data ] close in close out in: out: none ][ print ["ERROR during transfer of" join http://ead.ephe.sorbonne.fr:81/R7/ file] ] ] | |
Group: !CureCode ... web-based bugtracking tool [web-public] | ||
Henrik: 30-Aug-2009 | BTW, I spotted another error with the captcha: URL = /bugs/captcha.rsp File = /home/henrikmk/serve/www/bugs/captcha.rsp ** Access Error : Port none not open ** Where: confirm ** Near: [save/png img: make binary! 25000] At that time I noticed the image was not displayed in the browser, but it only happened once. |
101 / 297 | 1 | [2] | 3 |